package com.xs.demo.util;

import java.util.Properties;




/**
 * 常量表，定义各种常量</br>
 * 提供读取配置文件的方法
 * @author 
 *
 */
public class Constants {
	//登录系统后放到session里的KEY
	public static final String LOGIN_INFO = "LOGININFO";
	public static Properties p = new Properties();
	/**
	 * 密码在做SHA512摘要时加入的混淆码
	 * 此码在任何情况下都不能改动，不然会造成原有的用户都不能登录
	 */
	public static final String PASSWORD_SALT = "d703bb6b21799c3487a8b778959643eec3ae4405ee3621d4cb651e64f0082e440de897193b356770e0df0528beee6cddad1d408ca82d1dc3869afbe1a9bcd475";
	
	public static final String ROOTFUNC = "ROOTFUNC";
	
	public static final int FUNC_TYPE_TOP = 0;
	public static final int FUNC_TYPE_MAIN = 1;
	public static final int FUNC_TYPE_SUB = 2;
	public static final int FUNC_TYPE_BUT = 3;
	/**
	 * 角色说明
	 */
	public static final Integer ROLE_SY = -1;//只有首页权限的角色  value不可更改  不可删除
	public static final Integer ROLE_VIP = -2;//VIP角色  value不可更改  不可删除
	public static final int ROLE_BASIC = -3;//基础版角色  value不可更改  不可删除
	public static final int ROLE_STANDARD = -4;//标准版角色  value不可更改  不可删除
	
	

	public static final String CLIENTTYPE_MOBILE = "mobile";
	public static final String CLIENTTYPE_WEB = "web";
	
	//不需要验证权限的接口
	public static final String NOPERMISSION = PropertiesUtil.get("noPermission", "");
	public static final String SESSIONOUTTIME = PropertiesUtil.get("SessionOutTime");
	/**
	 * 是否有效标志--有效
	 */
	public static final Integer STATUS_FLAG_YES = 1;
			
	/**
	 * 是否有效标志--无效
	 */
	public static final Integer STATUS_FLAG_NO = 0;
			
	public static final String[] STATUS_FLAG_CODE = {"1","0"};
			
	public static final String[] STATUS_FLAG_NAME = {"有效","无效"};

	public static final String KAPTCHA_SESSION_KEY = "4028805e34ccd2b23134c0c8b2a00dba";
	
	/**
	 * 发邮件用户配置
	 */
	public static final String SEND_EMAIL_USER = p.getProperty("send_email_user", "");
	/**
	 * 是否有效 有效
	 */
	public static final String STATUS_YES = "1";
	/**
	 * 是否有效 无效
	 */
	public static final String STATUS_NO = "0";
	//是否发布
	public static final Integer IS_FB_YES = 1;
	public static final Integer IS_FB_NO = 0;
	/**
	 * 提取config.properties文件里的值，此文件应该是放在 项目名/config/下</br>
	 * @param key	配置文件里的键
	 * @return 真实值或者"",不会返回null
	 */
	public static String get(String key) {
		return p.getProperty(key, "");
	}
	
	/**
	 * 提取config.properties文件里的值，此文件应该是放在 项目名/config/下</br>
	 * @param key	配置文件里的键
	 * @param defaultValue 如果为空的话，返回的默认值
	 * @return 真实值或者提供的默认值
	 */
	public static String get(String key,String defaultValue) {
		return p.getProperty(key, defaultValue);
	}
	
}
